#!groovy

pipeline {
    agent {
        label "master"
    }
    
    environment {
        MAVEN_TOOL = 'M3' // 使用环境变量来定义 Maven 工具名称
    }

    stages {
        stage("test") {
            steps {
                script {
                    // 使用 Groovy 字符串插值来提高代码的可读性和灵活性
                    echo "hello world"
                }
            }
        }
        
        stage("BUILD") {
            steps {
                script {
                    // 使用环境变量来引用 Maven 工具
                    def mavenHome = tool "${env.MAVEN_TOOL}"
                    echo "${mavenHome}"
                    // 添加错误处理
                    try {
                        sh "${mavenHome}/bin/mvn -v"
                    } catch (Exception e) {
                        echo "Maven build failed"
                        error "Build failed due to Maven error"
                    }
                }
            }
        }
    }
}